home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Games of Daze
/
Infomagic - Games of Daze (Summer 1995) (Disc 2 of 2).iso
/
cheats
/
lvlinfo
/
switch.h
< prev
next >
Wrap
Text File
|
1995-03-16
|
2KB
|
42 lines
#define MAX_WALLS_PER_LINK 10
#define TRIGGER_DEFAULT 2*F1_0
#define MAX_TRIGGERS 100
#define MAX_WALL_SWITCHES 50
#define MAX_WALL_LINKS 100
// Trigger flags
#define TRIGGER_CONTROL_DOORS 1 // Control Trigger
#define TRIGGER_SHIELD_DAMAGE 2 // Shield Damage Trigger
#define TRIGGER_ENERGY_DRAIN 4 // Energy Drain Trigger
#define TRIGGER_EXIT 8 // End of level Trigger
#define TRIGGER_ON 16 // Whether Trigger is active
#define TRIGGER_ONE_SHOT 32 // If Trigger can only be triggered once
#define TRIGGER_MATCEN 64 // Trigger for materialization centers
#define TRIGGER_ILLUSION_OFF 128 // Switch Illusion OFF trigger
#define TRIGGER_ILLUSION_ON 512 // Switch Illusion ON trigger
#define TRIGGER_SECRET_EXIT 256 // Exit to secret level
// Trigger delay times before they can be retriggered (Recharge time)
#define TRIGGER_DELAY_DOOR F1_0*1 // 1 second for doors
#define TRIGGER_DELAY_ZAPS F1_0/10 // 1/10 second for quickie stuff
// New unimplemented trigger ideas
#define TRIGGER_CONTROL_ROBOTS 64 // If Trigger is a Door control trigger (Linked)
#define CONTROL_ROBOTS 8 // If Trigger modifies robot behavior
#define CONTROL_LIGHTS_ON 16 // If Trigger turns on lights in a certain area
#define CONTROL_LIGHTS_OFF 32 // If Trigger turns off lights in a certain area
typedef struct trigger {
byte type;
short flags;
fix value;
fix time;
byte link_num;
short num_links;
short seg[MAX_WALLS_PER_LINK];
short side[MAX_WALLS_PER_LINK];
} trigger;